package com.reactim.message.config.validation;

import jakarta.validation.Constraint;
import jakarta.validation.Payload;
import java.lang.annotation.*;

/**
 * 连接超时时间验证注解
 * 验证连接超时时间是否在合理范围内
 */
@Target({ElementType.FIELD, ElementType.PARAMETER})
@Retention(RetentionPolicy.RUNTIME)
@Constraint(validatedBy = ConnectionTimeoutValidator.class)
@Documented
public @interface ValidConnectionTimeout {
    
    String message() default "连接超时时间必须在1分钟到1440分钟（24小时）之间";
    
    Class<?>[] groups() default {};
    
    Class<? extends Payload>[] payload() default {};
    
    /**
     * 最小超时时间（分钟）
     */
    int min() default 1;
    
    /**
     * 最大超时时间（分钟）
     */
    int max() default 1440;
}